package com.ease.plugin.pluginClasses {
	import com.ease.core.plugin.ResourceBase;
	import com.ease.plugin.LoadableElementBase;
	import com.ease.plugin.traits.LoadTrait;
	import com.ease.plugin.traits.LoaderBase;


	public class PluginElement extends LoadableElementBase {
		/**
		 * Constructor.
		 *
		 * @param resource Resource for the plugin code. For static plugins,
		 * this is a PluginInfoResource.
		 * For dynamic plugins it is a URLResource.
		 * @see PluginInfoResource
		 * @see org.osmf.media.URLResource
		 *
		 *  @langversion 3.0
		 *  @playerversion Flash 10
		 *  @playerversion AIR 1.5
		 */
		public function PluginElement(loader:PluginLoader, resource:ResourceBase = null) {
			super(resource, loader);
		}

		/**
		 * @private
		 */
		override protected function createLoadTrait(resource:ResourceBase,
                                                  loader:LoaderBase):LoadTrait {
			return new PluginLoadTrait(loader, resource);
		}
	}
}